package main

import "fmt"

func main() {
	//切片的声明方式：

	//第一种
	var slice1 []int
	slice1 = make([]int, 3)
	slice1[0] = 1

	//第二种 声明并赋值
	var slice2 = []int{1, 2, 3, 4}
	slice2_1 := []int{1, 2, 3, 4}

	//第三种
	var slice3 []int = make([]int, 4)

	// ***第四种 建议使用 还有第三个参数（容量），容量不等于长度
	slice4 := make([]int, 4, 4)

	fmt.Println(slice1, slice2, slice2_1, slice3, slice4, cap(slice4))

	//判断是不是一个空切片  数组时空值，切片是nil
	var test []int
	if test == nil {
		fmt.Println("test 是一个空切片")
	} else {
		fmt.Println("test 不是一个空切片")
	}
}
